package com.thinkverse.audit.dto;

import com.thinkverse.common.dto.BaseDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 审计日志DTO
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class AuditLogDTO extends BaseDTO {
    
    /**
     * 用户ID
     */
    private Long userId;
    
    /**
     * 用户名
     */
    private String username;
    
    /**
     * 操作类型
     */
    private String operationType;
    
    /**
     * 操作描述
     */
    private String operationDescription;
    
    /**
     * 请求URL
     */
    private String requestUrl;
    
    /**
     * 请求方法
     */
    private String requestMethod;
    
    /**
     * 响应状态码
     */
    private Integer responseStatus;
    
    /**
     * 响应时间（毫秒）
     */
    private Long responseTime;
    
    /**
     * 客户端IP
     */
    private String clientIp;
    
    /**
     * 操作结果
     */
    private String operationResult;
    
    /**
     * 服务名称
     */
    private String serviceName;
    
    /**
     * 创建时间
     */
    private LocalDateTime createTime;
}
